package com.opages.transaction.message.service;

import com.opages.transaction.message.model.TransactionMessage;

import java.util.List;

/**
 * @author daizhong.liu
 * @create 2021-11-01 19:35
 **/
public interface TransactionMessageService {
    public int saveMessageWaitingConfirm(TransactionMessage message);
    public void updateMsgByConfirmAndSendMessage(String uuid);
    public int saveAndSendMessage(final TransactionMessage message);
    public void directSendMessage(final TransactionMessage message);
    public void updateMsgByReSendMessage(final TransactionMessage message);
    public void updateMsgReSendMessageByMessageId(String uuid);
    public void updateMessageToAreadlyDead(String uuid);
    public TransactionMessage getMessageByMessageId(String uuid);
    public void deleteMessageByMessageId(String uuid);
    public void updateMsgByReSendAllDeadMessageByQueueName(String queueName, int batchSize);

    List<TransactionMessage> findList(TransactionMessage message);
}
